/**
 * vue插件
 * 语法：{install(Vue){}}
 * 使用：需要去入口main.js中注册=》Vue.use(我的插件对象)
 */
// moment 插件  dayjs 插件  都是处理时间格式
import dayjs from "dayjs";
// 使用dayjs插件（按需）
import relativeTime from "dayjs/plugin/relativeTime";

// 全局组件
import Modal from "../views/home/components/modal.vue";
// 国际化
import "dayjs/locale/zh-cn";
dayjs.locale("zh-cn");
// 添加插件
dayjs.extend(relativeTime);

// 相对时间换算
/**
 *
 * @param {*} value 获取模版中值：val | filter
 */
const relTime = (value) => {
  // console.log(dayjs())
  return dayjs().from(value);
};
//睡眠函数
const $sleep = (time) => {
  return new Promise((resolve, reject) => {
    setTimeout(() => {
      resolve();
    }, 0);
  });
};
export default {
  // 在注册的时候框架调用install方法，传入Vue
  /**
   *
   * @param {*} Vue 构造函数
   */
  install(Vue) {
    Vue.prototype.$sleep = $sleep;
    // 全局格式化相对时间过滤器
    Vue.filter("relTime", relTime);

    // 全局组件
    Vue.component("Modal", Modal);
  },
};
